19:49 как зачем минус ноль а? Если раскрыть скобки, это будет +10, что и даст для буквы a 10, для b 11, для c 12, для d 13, для e 14 и, наконец, для d 15.
Хотел заменить, что на 26 минуте (показаны слайды с замерами) у статического исключения по бенчмаркам довольно большая ошибка(0.722 +- 0.340), чего быть не должно. Ошибка должа быть в пределах 5-7 процентах. Тут или замеры(бенчмарки) нужно переписать или что-то не учли.
Это в наносекундах. Подозреваю, что погрешность вычислений довольно большая. На сколько я помню, чем дальше от нуля (в обе стороны), тем выше погрешность.
Правильно не кидать эксепшены вовсе. В java явно не хватает Error классов вернее Result Как в Rust вопрос решается. И не надо ни каких приседаний что бы собирать стектрейс или нет. В 99% случаев он не нужен, особенно в валидаторах, или частный случай парсинг JSON ... тотже jackson раскидывает свой внутренний стектрейсу(0 информативности) при этом было бы полезнее просто указать место где это произошло. и все как пользователю библиотеки стектрейс ее не интересен. А уж если элементов больше одного то try catch и вовсе превращается во чтото моструозное. Не туда java копает.. ох не туда. В целом и от checked эксепшенов из-за лени отказались.. но сделали еще хуже теперь не понятно будет у тебя эксепшн или нет.. найдёшь в рантайме.
В моей прикладной области (game server) без exception и их stack trace не обойтись: ошибки возникают случайно в разных местах, всё предсказать невозможно; поэтому с тезисом в корне не согласен - Exception'ы нужны. ErrorOr тоже полезен, но полностью заменить Exception никогда не сможет - оставьте мне, пожалуйста, Java без Go с if err != nil на каждый чих: язык и без этого многословный :) При перекладывании JSON, думаю, ErrorOr вам бы пригодился - в целом его самостоятельно можно и реализовать, язык это позволяет. Синтаксический сахар - это уже «debatable»
Есть ли еще какие-то способы создать и обработать исключение без stacktrace, кроме флага OmitStackTrace... ? Можно ли создать исключение без создания стектрейса? Есть ли какая-нибудь аннотация для этого?
Можно, но придётся свой класс исключения создать (у Throwable есть конструктор, принимающий boolean writeInStacktrace (не помню точно как называется), но стандартные классы исключений вроде как его не предоставляют) -а ещё, заранее извиняюсь, если об этом в презентации было, я только на начале ещё xD-
Первый раз смотрю доклад Ситникова, и восхищаюсь тем, как ему удается удерживать внимание зрителя. Спасибо тебе!
Заменить "Привет, мир" на "Привет, мама" - тонко! очень тонко! Браво! :))
Топовый доклад Володи! Пополнение списка "советую смотреть всем"!
Шикарный доклад!
Вова, спасибо, как всегда мимими)
19:49 как зачем минус ноль а? Если раскрыть скобки, это будет +10, что и даст для буквы a 10, для b 11, для c 12, для d 13, для e 14 и, наконец, для d 15.
Хотел заменить, что на 26 минуте (показаны слайды с замерами) у статического исключения по бенчмаркам довольно большая ошибка(0.722 +- 0.340), чего быть не должно.
Ошибка должа быть в пределах 5-7 процентах.
Тут или замеры(бенчмарки) нужно переписать или что-то не учли.
Это в наносекундах. Подозреваю, что погрешность вычислений довольно большая. На сколько я помню, чем дальше от нуля (в обе стороны), тем выше погрешность.
так что же хотел сказать докладчик?
Правильно не кидать эксепшены вовсе. В java явно не хватает Error классов вернее Result Как в Rust вопрос решается. И не надо ни каких приседаний что бы собирать стектрейс или нет. В 99% случаев он не нужен, особенно в валидаторах, или частный случай парсинг JSON ... тотже jackson раскидывает свой внутренний стектрейсу(0 информативности) при этом было бы полезнее просто указать место где это произошло. и все как пользователю библиотеки стектрейс ее не интересен. А уж если элементов больше одного то try catch и вовсе превращается во чтото моструозное. Не туда java копает.. ох не туда. В целом и от checked эксепшенов из-за лени отказались.. но сделали еще хуже теперь не понятно будет у тебя эксепшн или нет.. найдёшь в рантайме.
В моей прикладной области (game server) без exception и их stack trace не обойтись: ошибки возникают случайно в разных местах, всё предсказать невозможно; поэтому с тезисом в корне не согласен - Exception'ы нужны.
ErrorOr тоже полезен, но полностью заменить Exception никогда не сможет - оставьте мне, пожалуйста, Java без Go с if err != nil на каждый чих: язык и без этого многословный :)
При перекладывании JSON, думаю, ErrorOr вам бы пригодился - в целом его самостоятельно можно и реализовать, язык это позволяет. Синтаксический сахар - это уже «debatable»
Подождем 20 лет, этот Result будет мейнстримом.
@@flatmapper В JS новой редакции уже завезли!
Ребят, а в чём презентация делалась?)
Есть ли еще какие-то способы создать и обработать исключение без stacktrace, кроме флага OmitStackTrace... ? Можно ли создать исключение без создания стектрейса? Есть ли какая-нибудь аннотация для этого?
Можно, но придётся свой класс исключения создать (у Throwable есть конструктор, принимающий boolean writeInStacktrace (не помню точно как называется), но стандартные классы исключений вроде как его не предоставляют)
-а ещё, заранее извиняюсь, если об этом в презентации было, я только на начале ещё xD-
Какой то общей картины почему то не складывается. Доклад вроде обо всем, но при этом ни о чем
Из-за зашкаливающего уровня выпендрёжа, этот доклад трудно назвать последовательным, и вообще, в целом удачным